Mutation (genetic algorithm)

Mutation is a genetic operator used to maintain genetic diversity of the chromosomes of a population of a genetic or, more generally, an evolutionary algorithm (EA). It is analogous to biological mutation.

The classic example of a mutation operator of a binary coded genetic algorithm (GA) involves a probability that an arbitrary bit in a genetic sequence will be flipped from its original state. A common method of implementing the mutation operator involves generating a random variable for each bit in a sequence. This random variable tells whether or not a particular bit will be flipped. This mutation procedure, based on the biological point mutation, is called single point mutation. Other types of mutation operators are commonly used for representations other than binary, such as floating-point encodings or representations for combinatorial problems.

The purpose of mutation in EAs is to introduce diversity into the sampled population. Mutation operators are used in an attempt to avoid local minima by preventing the population of chromosomes from becoming too similar to each other, thus slowing or even stopping convergence to the global optimum. This reasoning also leads most EAs to avoid only taking the fittest of the population in generating the next generation, but rather selecting a random (or semi-random) set with a weighting toward those that are fitter.[1]

The following requirements apply to all mutation operators used in an EA:[2][3]

  1. every point in the search space must be reachable by one or more mutations.
  2. there must be no preference for parts or directions in the search space (no drift).
  3. small mutations should be more probable than large ones.

For different genome types, different mutation types are suitable. Some mutations are Gaussian, Uniform, Zigzag, Scramble, Insertion, Inversion, Swap, and so on.[4][5][6] An overview and more operators than those presented below can be found in the introductory book by Eiben and Smith[7] or in.[8]

  1. ^ "XI. Crossover and Mutation". Marek Obitko. Retrieved 2011-04-07.
  2. ^ Eiben, A.E.; Smith, J.E. (2015). "Variation Operators (Mutation and Recombination)". Introduction to Evolutionary Computing. Natural Computing Series. Berlin, Heidelberg: Springer. pp. 31–32. doi:10.1007/978-3-662-44874-8. ISBN 978-3-662-44873-1. S2CID 20912932.
  3. ^ Bäck, Thomas; Fogel, David B.; Whitley, Darrell; Angeline, Peter J. (1999). "Mutation operators". In Bäck, Thomas; Fogel, David B.; Michalewicz, Zbigniew (eds.). Evolutionary computation. Vol. 1, Basic algorithms and operators. Boca Racon: CRC Press. pp. 237–255. ISBN 0-585-30560-9. OCLC 45730387.
  4. ^ Mirjalili, Seyedali (2019), Mirjalili, Seyedali (ed.), "Genetic Algorithm", Evolutionary Algorithms and Neural Networks: Theory and Applications, Studies in Computational Intelligence, vol. 780, Cham: Springer International Publishing, pp. 43–55, doi:10.1007/978-3-319-93025-1_4, ISBN 978-3-319-93025-1, S2CID 242047607, retrieved 2023-05-26
  5. ^ Harifi, Sasan; Mohamaddoust, Reza (2023-05-01). "Zigzag mutation: a new mutation operator to improve the genetic algorithm". Multimedia Tools and Applications. doi:10.1007/s11042-023-15518-3. ISSN 1573-7721. S2CID 258446829.
  6. ^ Katoch, Sourabh; Chauhan, Sumit Singh; Kumar, Vijay (2021-02-01). "A review on genetic algorithm: past, present, and future". Multimedia Tools and Applications. 80 (5): 8091–8126. doi:10.1007/s11042-020-10139-6. ISSN 1573-7721. PMC 7599983. PMID 33162782.
  7. ^ Eiben, A.E.; Smith, J.E. (2015). "Representation, Mutation, and Recombination". Introduction to Evolutionary Computing. Natural Computing Series. Berlin, Heidelberg: Springer. pp. 49–78. doi:10.1007/978-3-662-44874-8. ISBN 978-3-662-44873-1. S2CID 20912932.
  8. ^ Michalewicz, Zbigniew (1992). Genetic Algorithms + Data Structures = Evolution Programs. Artificial Intelligence. Berlin, Heidelberg: Springer Berlin Heidelberg. doi:10.1007/978-3-662-02830-8. ISBN 978-3-662-02832-2. S2CID 33272042.

© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search